package main

import (
	"fmt"
)

func main() {



	returnFun := func(args string) {
		fmt.Println("========returnFun====", args)
	}


	upFn := func(args string, returnFun func(args string)) {

		defer func() {
			fmt.Println("========1===== defer =====")
		}()

		fmt.Println("========1=============", args)

		returnFun(args)

	}
	MapFunc(upFn, "hhhh", returnFun)
}




func MapFunc(fn func(args string, returnFun func(args string)), args string, returnFun func(args string)) {
	fn(args, returnFun)
}


